package org.jeecg.modules.lock.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * Created by IntelliJ IDEA
 *
 * @Description:
 * @Author : M-JGG
 * @create 2024/4/3 11:54
 */
@Data
@TableName("lwgy_door_lock_log")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class LwgyDoorLock  implements Serializable {
    private static final long serialVersionUID = 1L;

    /**主键*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;

    /**关联消息的ID*/
    @Excel(name = "关联消息的ID", width = 15)
    @ApiModelProperty(value = "关联消息的ID")
    private String requestId;

    /**上报时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "上报时间")
    private Date uploadTime;

    /**日志创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "日志创建时间")
    private Date createTime;

    /**日志触发时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "日志触发时间")
    private Date updateTime;

    /**房间ID*/
    @Excel(name = "房间ID", width = 15)
    @ApiModelProperty(value = "房间ID")
    private String roomId;
    /**日志ID*/
    @Excel(name = "抄表时间", width = 15)
    @ApiModelProperty(value = "日志ID")
    private String logId;
    /**门锁mac*/
    @Excel(name = "门锁mac", width = 15)
    @ApiModelProperty(value = "门锁mac")
    private String lockMac;
    /**日志等级*/
    @Excel(name = "日志等级", width = 15)
    @ApiModelProperty(value = "日志等级")
    private String logLevel;
    /**日志描述*/
    @Excel(name = "日志描述", width = 15)
    @ApiModelProperty(value = "日志描述")
    private String logAlert;
    /**日志类型*/
    @Excel(name = "日志类型", width = 15)
    @ApiModelProperty(value = "日志类型")
    private String logType;
    /**门锁类型*/
    @Excel(name = "门锁类型", width = 15)
    @ApiModelProperty(value = "门锁类型")
    private String lockType;

    /**签名*/
    @Excel(name = "签名", width = 15)
    @ApiModelProperty(value = "签名")
    private String sign;

    /**状态*/
    @Excel(name = "状态", width = 15)
    @ApiModelProperty(value = "状态")
    private String state;

    /**执行次数*/
    @Excel(name = "执行次数", width = 15)
    @ApiModelProperty(value = "执行次数")
    private Integer exeTimes;
}
